#include "RNOH/PackageProvider.h"
#include "generated/RNOHGeneratedPackage.h"

#include "PickerPackage.h"
#include "LottieAnimationViewPackage.h"
#include "DateTimePickerPackage.h"
#include "BlurPackage.h"
#include "WebViewPackage.h"
#include "ViewPagerPackage.h"
#include "SafeAreaViewPackage.h"
#include "FlashListPackage.h"
#include "GestureHandlerPackage.h"
#include "ReanimatedPackage.h"
#include "SpringScrollViewPackage.h"
#include "RNCVideoPackage.h"
#include "MaskedPackage.h"
#include "SliderPackage.h"
#include "RNFSPackage.h"
#include "CameraRollPackage.h"
#include "MapsPackage.h"
#include "VisionCameraPackage.h"
#include "ImageCropPickerPackage.h"
#include "BlobUtilPackage.h"
#include "BaseDatePickerPackage.h"
#include "ThemeSwitchAnimationPackage.h"
#include "SearchBarPackage.h"
#include "generated/SignatureCapturePackage.h"
#include "EmailLinkGeneratedPackage.h"
#include "RNCompassHeadingPackage.h"
#include "RNThemeControlPackage.h"
#include "UnistylesPackage.h"
#include "ContextMenuPackage.h"
#include "ShakePackage.h"
#include "MixpanelPackage.h"
#include "RNAudioRecorderPlayerPackage.h"
#include "SnackbarPackage.h"
#include "RNOHAppleAuthenticationPackage.h"
#include "RNSystemSettingPackage.h"
#include "keyboardControllerPackage.h"
#include "RNTextInputMaskPackage.h"
#include "NfcManagerPackage.h"
#include "RNHapticFeedbackPackage.h"
#include "CustomKeyboardPackage.h"
#include "IdleTimerRNOHGeneratedPackage.h"
#include "RNFileAccessPackage.h"
#include "RNBackgroundFetchPackage.h"
#include "UiLibPackage.h"
#include "CreateThumbnailPackage.h"
#include "SkiaPackage.h"
#include "AlipayPackage.h"
#include "RNConfigPackage.h"
#include "SVGPackage.h"
#include "RNDeviceInfoPackage.h"

using namespace rnoh;

std::vector<std::shared_ptr<Package>> PackageProvider::getPackages(Package::Context ctx) {
    return {
        std::make_shared<RNOHGeneratedPackage>(ctx),
        std::make_shared<PickerPackage>(ctx),
        std::make_shared<LottieAnimationViewPackage>(ctx),
        std::make_shared<DateTimePickerPackage>(ctx),
        std::make_shared<BlurPackage>(ctx),
        std::make_shared<WebViewPackage>(ctx),
        std::make_shared<ViewPagerPackage>(ctx),
        std::make_shared<SafeAreaViewPackage>(ctx),
        std::make_shared<FlashListPackage>(ctx),
        std::make_shared<GestureHandlerPackage>(ctx),
        std::make_shared<ReanimatedPackage>(ctx),
        std::make_shared<SpringScrollViewPackage>(ctx),
        std::make_shared<RNCVideoPackage>(ctx),
        std::make_shared<MaskedPackage>(ctx),
        std::make_shared<SliderPackage>(ctx),
        std::make_shared<RNFSPackage>(ctx),
        std::make_shared<CameraRollPackage>(ctx),
        std::make_shared<MapsPackage>(ctx),
        std::make_shared<VisionCameraPackage>(ctx),
        std::make_shared<ImageCropPickerPackage>(ctx),
        std::make_shared<RNBlobUtilPackage>(ctx),
        std::make_shared<BaseDatePickerPackage>(ctx),
        std::make_shared<ThemeSwitchAnimationPackage>(ctx),
        std::make_shared<SearchBarPackage>(ctx),
        std::make_shared<SignatureCapturePackage>(ctx),
        std::make_shared<EmailLinkRNOHGeneratedPackage>(ctx),
        std::make_shared<RNCompassHeadingPackage>(ctx),
        std::make_shared<RNThemeControlPackage>(ctx),
        std::make_shared<UnistylesPackage>(ctx),
        std::make_shared<ContextMenuPackage>(ctx),
        std::make_shared<ShakePackage>(ctx),
        std::make_shared<MixpanelPackage>(ctx),
        std::make_shared<RNAudioRecorderPlayerPackage>(ctx),
        std::make_shared<SnackbarPackage>(ctx),
        std::make_shared<RNOHAppleAuthenticationPackage>(ctx),
        std::make_shared<RNSystemSettingPackage>(ctx),
        std::make_shared<KeyboardControllerPackage>(ctx),
        std::make_shared<RNTextInputMaskPackage>(ctx),
        std::make_shared<NfcManagerPackage>(ctx),
        std::make_shared<RNHapticFeedbackPackage>(ctx),
        std::make_shared<CustomKeyboardPackage>(ctx),
        std::make_shared<IdleTimerRNOHGeneratedPackage>(ctx),
        std::make_shared<RNFileAccessPackage>(ctx),
        std::make_shared<RNBackgroundFetchPackage>(ctx),
        std::make_shared<UiLibPackage>(ctx),
        std::make_shared<CreateThumbnailPackage>(ctx),
        std::make_shared<SkiaPackage>(ctx),
        std::make_shared<AlipayGeneratedPackage>(ctx),
        std::make_shared<RNConfigPackage>(ctx),
        std::make_shared<SVGPackage>(ctx),
        std::make_shared<RNDeviceInfoPackage>(ctx),
    };
} 